Netopia Payments

The Netopia Payments integration lets you collect payments directly in your DRUID conversational flows. With this integration, your chatbot can guide users through a seamless payment experience—from capturing billing and shipping details to generating a secure payment link through Netopia Payments.

When users reach the payment step in a conversation, the bot prompts them to enter the required details (such as billing and shipping information, depending on your flow configuration). Once all necessary data is provided, the bot automatically sends the user a payment link generated by Netopia. Users can then complete the transaction securely through the Netopia payment gateway.

This integration streamlines your sales or billing processes by combining conversational engagement with fast, secure online payments—all within the chat interface.

Prerequisites

Before you begin, make sure you have the following:

  • An active merchant account with Netopia Payments. Having an active account means you’ve already signed a contract with Netopia and completed the required onboarding steps.
  • A configured Point of Sale (POS) in the Netopia Payments Portal for your e-commerce solution, linked to your domain.

Integrating Netopia Payments in your conversations

This section explains how to configure Netopia Payments in your conversational flows.

Step 1. Generate an API Key for your Netopia Payments profile

  1. Go to Netopia Payments admin console and log in.
  2. To generate an API Key for a Sandbox environment, click Sandbox on the main menu.
  3. Hint:  If you’re working in the Live environment, skip this step.
  4. In the top-right corner, click on the profile icon and select Security.
  5. The API key page appears.

  6. Enter a key name, then click GENERATE KEY.
  7. Copy the API key value as you will need it to configure the payment app in the DRUID Portal.

Step 2. Create a Netopia Payments app

To configure a payment app in DRUID Portal:

  1. Go to Solution Contents > Apps.
  2. In the top-right corner, click Create App and select Payment.
  3. The app configuration page appears.

  4. In the Code field, enter a unique name for your app.
  5. From the NETOPIA Payment Environment drop-down, select the environment type: Sandbox or Live.
  6. Hint:  Start with the Sandbox environment to test and confirm your configuration. After successful testing, update the app with the POS Signature and API Key for the Live environment. These credentials are specific to each Netopia Payments environment.
  7. In the API Key field, enter the API key you generated at Step 1.
  8. In the POS Signature field, enter the Signature generated for your POS in the Netopia Payments admin console. To get the Signature, follow these steps:
    1. Go to Netopia Payments admin console and log in.
    2. To view POS details for the sandbox environment, click Sandbox on the main menu, then in the sandbox environment, click Point of sale on the main menu.
    3. Hint:  If you’re working in the Live environment, skip this step.
    4. Next to your e-commerce provider, click the Actions icon (⋮) and select Technical settings.
    5. Copy the Signature.
  9. (Optional) Update the following settings:
    • Default currency: The default value is RON. You can change it here; this setting overrides the default.
    • Default language: The default is Romanian. You can change it using the ISO 3166-1 numeric code for the desired country.
  10. Save, then publish the app.

Step 3. Configure the payment flow

Add a new flow for payments and configure it as follows:

  1. Add prompt steps to capture the information provided in the table below. Pay attention to the entity fields you need to enter in Input mapping for each prompt step.
  2. Information type Required Ask the user for Info type Input mapping
    Billing information   Yes amount decimal [[ConversationInfo]].Payment.Amount
    currency string [[ConversationInfo]].Payment.Currency
    email string [[ConversationInfo]].Payment.Email
    phone string [[ConversationInfo]].Payment.Phone
    first name string [[ConversationInfo]].Payment.FirstName
    last name string [[ConversationInfo]].Payment.LastName
    city string [[ConversationInfo]].Payment.City
    country

    integer

    ISO 3166-1 numeric code for the country

    [[ConversationInfo]].Payment.Country
    state string [[ConversationInfo]].Payment.State
    postal code string [[ConversationInfo]].Payment.ZipCode
    details string [[ConversationInfo]].Payment.Details
    Shipping information

    No

    Note:  If you don’t collect shipping information from the user, the billing information is automatically used as the shipping information.

     

    email string [[ConversationInfo]].PaymentShipping.Email
    phone string [[ConversationInfo]].PaymentShipping.Phone
    first name string [[ConversationInfo]].PaymentShipping.FirstName
    last name string [[ConversationInfo]].PaymentShipping.LastName
    city string [[ConversationInfo]].PaymentShipping.City
    country string [[ConversationInfo]].PaymentShipping.Country
    state string [[ConversationInfo]].PaymentShipping.State
    postal code

    integer

    ISO 3166-1 numeric code for the country

    [[ConversationInfo]].PaymentShipping.ZipCode
    details string [[ConversationInfo]].PaymentShipping.Details

  3. From the Flow Palette, add the Payment flow step and click the Configuration icon.
  4. Click on the General section.
  5. Enter a Step name.
  6. From the Connection Code drop-down, select the Netopia Payments app you created at Step 2.
  7. In the Step message field, enter a message that includes the entity field [[ConversationInfo]].Payment.Url. This entity field stores the Netopia payment URL that users access to complete their payment.
  8. For example, 'To proceed with the payment, click this link: [[ConversationInfo]].Payment.Url, and follow the on-screen instructions'.

  9. Save the step.

When the conversation reaches the payment step, the system automatically validates all payment information provided by the user in the prompt steps. If any required information is missing or invalid, an error message is displayed until all necessary details are provided.

This validation helps conversation authors properly configure and test their payment flows before deploying the bot to production, ensuring that all required data is captured correctly.